package com.kld.yqyj.service;

import com.kld.yqyj.domain.TInjwwD;
import com.kld.yqyj.domain.vo.TInjwwDVo;
import com.kld.yqyj.domain.bo.TInjwwDBo;
import com.kld.common.core.page.TableDataInfo;
import com.kld.common.core.domain.PageQuery;

import java.util.Collection;
import java.util.List;

/**
 * 注水井生产日报Service接口
 *
 * @author bw
 * @date 2024-05-15
 */
public interface ITInjwwDService {

    /**
     * 查询注水井生产日报
     *
     * @param wellId 注水井生产日报主键
     * @return 注水井生产日报
     */
    TInjwwDVo queryById(String wellId);

    /**
     * 查询注水井生产日报列表
     *
     * @param tInjwwD 注水井生产日报
     * @return 注水井生产日报集合
     */
    TableDataInfo<TInjwwDVo> queryPageList(TInjwwDBo bo, PageQuery pageQuery);

    /**
     * 查询注水井生产日报列表
     *
     * @param tInjwwD 注水井生产日报
     * @return 注水井生产日报集合
     */
    List<TInjwwDVo> queryList(TInjwwDBo bo);

    /**
     * 修改注水井生产日报
     *
     * @param tInjwwD 注水井生产日报
     * @return 结果
     */
    Boolean insertByBo(TInjwwDBo bo);

    /**
     * 修改注水井生产日报
     *
     * @param tInjwwD 注水井生产日报
     * @return 结果
     */
    Boolean updateByBo(TInjwwDBo bo);

    /**
     * 校验并批量删除注水井生产日报信息
     *
     * @param wellIds 需要删除的注水井生产日报主键集合
     * @param isValid 是否校验,true-删除前校验,false-不校验
     * @return 结果
     */
    Boolean deleteWithValidByIds(Collection<String> ids, Boolean isValid);
}
